TechDraw PageTemplate/ru

Вставить страницу используя шаблон

Расположение в меню
TechDraw → Вставить страницу используя шаблон
Верстаки
TechDraw
Быстрые клавиши
Нет
Представлено в версии
-
См. также
Вставить страницу по умолчанию, Шаблоны

Описание

The TechDraw PageTemplate tool creates a new Page object using the template file selected from a dialog.

The starting directory for the dialog can be specified in the TechDraw Preferences.

One of the templates that comes with TechDraw: A4_Landscape_ISO7200_Pep.svg

Применение

  1. An active document must exist.
  2. There are several ways to invoke the tool:
    • Press the New Page From Template button.
    • Select the TechDraw → Page → New Page From Template option from the menu.

Свойства

See TechDraw PageDefault.

Программирование

См. так же: TechDraw API и Основы составления скриптов FreeCAD.

A Page based on a selected template can be created with macros and from the Python Console by using the following functions:

import FreeCAD as App
from PySide import QtGui

doc = App.ActiveDocument
default_dir = App.getResourceDir() + "Mod/TechDraw/Templates"
param = App.ParamGet("User parameter:BaseApp/Preferences/Mod/TechDraw/Files")
template_dir = param.GetString("TemplateDir", default_dir)

template_file = QtGui.QFileDialog.getOpenFileName(QtGui.QApplication.activeWindow(),
                                                  "Select a Template File", 
                                                  template_dir,
                                                  "Template (*.svg)")
                                                  
page = doc.addObject("TechDraw::DrawPage", "Page")
template = doc.addObject("TechDraw::DrawSVGTemplate", "Template")
template.Template = template_file[0]
page.Template = template

doc.recompute()

Editable text fields

See also: TechDraw Templates for more information on creating templates.

Once a new Page object has been created, its Template attribute links to the embedded Template object that holds an EditableTexts dictionary with the name of the editable fields (keys) and their textual values. Copy this dictionary to a variable, make changes, and then re-assign the dictionary to the EditableTexts attribute to see the changes.

page = FreeCAD.ActiveDocument.Page
texts = page.Template.EditableTexts

for key, value in texts.items():
    print("{0} = {1}".format(key, value))

texts["FC-Title"] = "The title of my page"
page.Template.EditableTexts = texts

To edit individual fields the setEditFieldContent method of the linked Template object can be used:

page.Template.setEditFieldContent("FC-Title", "Another title of my page")